diff options
| author | Armand Philippot <git@armandphilippot.com> | 2022-05-17 22:48:41 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2022-05-17 22:48:41 +0200 |
| commit | 271ef6debaca7ed9a01829dcef3a37e90a2dff05 (patch) | |
| tree | aa1513b40e7020a44cfcaaedc3a33d39ecfb8af7 /src/pages/projets/[slug].tsx | |
| parent | 4e53a8654441481029746ff4e35a4a19c8d83709 (diff) | |
chore: use persistent layout
It prevents to rerender the common components between pages (header,
footer...).
Diffstat (limited to 'src/pages/projets/[slug].tsx')
| -rw-r--r-- | src/pages/projets/[slug].tsx | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/pages/projets/[slug].tsx b/src/pages/projets/[slug].tsx index 1a90e0f..cf7d0dc 100644 --- a/src/pages/projets/[slug].tsx +++ b/src/pages/projets/[slug].tsx @@ -6,10 +6,15 @@ import Code from '@components/molecules/layout/code'; import Gallery from '@components/organisms/images/gallery'; import Overview, { OverviewMeta } from '@components/organisms/layout/overview'; import Sharing from '@components/organisms/widgets/sharing'; +import { getLayout } from '@components/templates/layout/layout'; import PageLayout, { PageLayoutProps, } from '@components/templates/page/page-layout'; -import { ProjectPreview, Repos } from '@ts/types/app'; +import { + type NextPageWithLayout, + type ProjectPreview, + type Repos, +} from '@ts/types/app'; import { loadTranslation, Messages } from '@utils/helpers/i18n'; import { getProjectData, getProjectFilenames } from '@utils/helpers/projects'; import { capitalize } from '@utils/helpers/strings'; @@ -17,7 +22,7 @@ import useBreadcrumb from '@utils/hooks/use-breadcrumb'; import useGithubApi, { RepoData } from '@utils/hooks/use-github-api'; import useSettings from '@utils/hooks/use-settings'; import { MDXComponents, NestedMDXComponents } from 'mdx/types'; -import { GetStaticPaths, GetStaticProps, NextPage } from 'next'; +import { GetStaticPaths, GetStaticProps } from 'next'; import Head from 'next/head'; import { useRouter } from 'next/router'; import Script from 'next/script'; @@ -33,7 +38,7 @@ type ProjectPageProps = { /** * Project page. */ -const ProjectPage: NextPage<ProjectPageProps> = ({ project }) => { +const ProjectPage: NextPageWithLayout<ProjectPageProps> = ({ project }) => { const { id, intro, meta, title } = project; const { cover, dates, license, repos, seo, technologies } = meta; const intl = useIntl(); @@ -207,6 +212,9 @@ const ProjectPage: NextPage<ProjectPageProps> = ({ project }) => { ); }; +ProjectPage.getLayout = (page) => + getLayout(page, { useGrid: true, withExtraPadding: true }); + export const getStaticProps: GetStaticProps<ProjectPageProps> = async ({ locale, params, |
